From 15c4f144a3783d9f1f2c976acf9f4d85988fd466 Mon Sep 17 00:00:00 2001
From: Albert Astals Cid <aacid@kde.org>
Date: Sun, 5 Jan 2020 19:56:57 +0100
Subject: [PATCH] rfbShutdownServer: Call rfbClientConnectionGone if no
 backgroundLoop

Otherwise the servers that don't use rfbRunEventLoop don't get
notified of client disconnections
---
 libvncserver/main.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/libvncserver/main.c b/libvncserver/main.c
index b51f0ab6..738a501d 100644
--- a/libvncserver/main.c
+++ b/libvncserver/main.c
@@ -1152,6 +1152,8 @@ void rfbShutdownServer(rfbScreenInfoPtr screen,rfbBool disconnectClients) {
       write(currentCl->pipe_notify_client_thread[1], "\x00", 1);
       /* And wait for it to finish. */
       pthread_join(currentCl->client_thread, NULL);
+    } else {
+      rfbClientConnectionGone(currentCl);
     }
 #else
       rfbClientConnectionGone(currentCl);
